Certain printers use one or more printbars to print an image on a print medium. In an ink-jet printer, a printbar may comprise one or more printheads with a plurality of nozzles to eject liquid ink onto a print medium. Ink is ejected from each nozzle using a transducer. In a thermal ink-jet printer, the transducer comprises a nozzle resister; in other ink-jet printers the transducer may comprise a piezoelectric element. Continuous ink-jet printing is also possible, wherein ejected ink is directed onto a print medium using an electro-magnetic field. In most cases, the ejection of ink by a transducer is controlled by a voltage signal, sometimes referred to as a firing signal. Commonly, one or more printbars of a printing device are mounted above a media transport that transports a print medium along a path under said printbars. In these cases, ink is ejected across a gap formed below the one or more printbars and is deposited on to the print medium carried by the media transport.
Typically, a print controller or print engine needs to generate firing signals for a plurality of printheads located in one or more printbars based on an image to be printed. Due to the location of the one or more printbars above the media transport, the print controller or print engine is often located in a central printer structure or in a coupled computing device. The print controller or print engine thus sends nozzle firing signals to individual printheads over a plurality of printhead data lines that extend between the central printer structure (or coupled computing device) and the printbar. The nozzle firing data is unidirectional and time-dependent; the transducers need to be accurately controlled in time in order to print a suitable image on a print medium. In many cases it is also not possible to guarantee when the printing data will be generated; for example, this depends on the image to be printed and real-time processes such as those based on encoder signals and print media location. A printhead monitoring and control bus may also be supplied. Since the printing data flow is unidirectional and it is not possible to guarantee when the printing data will be generated, the printhead control data needs to travel on its own control bus.
Existing configurations are suitable for scanning printer configurations with a relatively low number of printheads. However, as the number of printheads increase, for example as found in page-wide-array, there are problems with a reliability of communicated data and hardware complexity and cost.